// 伪数组
var obj = {
    '2': 3,
    '3': 4,
    'length': 2,
    'splice': Array.prototype.splice,
    'push': Array.prototype.push
  }
  obj.push(1)
  obj.push(2)
  console.log(obj)
//   push 方法根据 length 属性来决定从哪里开始插入给定的值。
// 调用push方法的时候会在调用对象的key=length的地方做一个赋值，不管前面key有没有值，也就是说在调用push的时候 对象实际被理解为了[0:undefined,1:undefined,2:3,3:4],
// 这样也就有了结果里面的
// key===2 value =1
// key===3 value =2
//   {'2': 1,'3': 2,length: 4,splice: [Function: splice],push: [Function: push]}